package com.ruoyi.engine.mapper;

import java.util.List;
import com.ruoyi.engine.domain.BpmProcessDefinition;
import org.apache.ibatis.annotations.Select;

/**
 * 模版引擎管理Mapper接口
 * 
 * @author ruoyi
 * @date 2025-05-25
 */
public interface BpmProcessDefinitionMapper 
{
    //根据ProcessKey查询模版引擎管理
    @Select("select * from bpm_process_definition where process_key = #{processKey}")
    public BpmProcessDefinition selectBpmProcessDefinitionByProcessKey(String processKey);
    //查询最大版本号
    @Select("select max(version) from bpm_process_definition")
    public Integer selectMaxVersion();
    /**
     * 查询模版引擎管理
     * 
     * @param id 模版引擎管理主键
     * @return 模版引擎管理
     */
    public BpmProcessDefinition selectBpmProcessDefinitionById(Long id);

    /**
     * 查询模版引擎管理列表
     * 
     * @param bpmProcessDefinition 模版引擎管理
     * @return 模版引擎管理集合
     */
    public List<BpmProcessDefinition> selectBpmProcessDefinitionList(BpmProcessDefinition bpmProcessDefinition);

    /**
     * 新增模版引擎管理
     * 
     * @param bpmProcessDefinition 模版引擎管理
     * @return 结果
     */
    public int insertBpmProcessDefinition(BpmProcessDefinition bpmProcessDefinition);

    /**
     * 修改模版引擎管理
     * 
     * @param bpmProcessDefinition 模版引擎管理
     * @return 结果
     */
    public int updateBpmProcessDefinition(BpmProcessDefinition bpmProcessDefinition);

    /**
     * 删除模版引擎管理
     * 
     * @param id 模版引擎管理主键
     * @return 结果
     */
    public int deleteBpmProcessDefinitionById(Long id);

    /**
     * 批量删除模版引擎管理
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteBpmProcessDefinitionByIds(Long[] ids);
}
